import {
  listKind
} from "../../api/index/kind"
import {
  getFoodByKind
} from "../../api/index/food"
const app = getApp();

// pages/kind/kind.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 标签
    activeKey: 0,
    // 分类列表
    kindList: [],
    // 菜品列表
    foodList: []
  },

  onLoad() {
    this.getKinds();
  },

  onShow() {
    this.updateTabBarIndex();
  },

  // 侧边发生改变
  onSideChange(e) {
    this.setData({
      activeKey: e.detail
    })
    // 右侧显示对应的菜品列表
    this.getFoodList(this.data.kindList[e.detail].id)
  },

  // 搜索
  goSearch() {
    wx.navigateTo({
      url: '/pages/search/search',
    })
  },

  // 前往详情
  goFoodDetail(e) {
    const dataset = e.currentTarget.dataset;
    wx.navigateTo({
      url: '/pages/food-detail/food-detail?id=' + dataset.id,
    })
  },

  // 获取分类下的菜品列表
  getFoodList(id) {
    getFoodByKind(id).then(res => {
      res.rows.forEach(item => {
        item.image = app.globalData.resourceUrl + item.image
      })
      this.setData({
        foodList: res.rows
      })
    }).catch(err => {
      console.error(err);
    })
  },

  // 获取分类信息
  getKinds() {
    listKind({
      pageNum: 1,
      pageSize: 10
    }).then(res => {
      this.setData({
        kindList: res.rows
      });
      // 默认获取第一个分类的菜品
      this.getFoodList(res.rows[0].id)
    }).catch(err => {
      console.error(err);
    })
  },

  updateTabBarIndex() {
    if (typeof this.getTabBar === 'function' &&
      this.getTabBar()) {
      this.getTabBar().setData({
        selected: 1
      })
    }
  }
})